package com.osce.common.core.entity.vo;

import com.osce.common.annotation.Excel;
import com.osce.common.constant.UserConstants;
import lombok.*;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @author zzxjs
 * @since 2023/7/23
 */
@AllArgsConstructor
@NoArgsConstructor
@ToString
@Builder
@Data
public class SimulatedPatientExcelVo {

    /**
     * 用户账号
     */
    @Excel(name = "登录账户")
    private String userName;

    /**
     * 用户姓名
     */
    @Excel(name = "病人姓名")
    private String nickName;

    /**
     * 用户邮箱
     */
    @Excel(name = "邮箱")
    private String email;

    /**
     * 身份证
     */
    @Excel(name = "身份证")
    private String identity;

    /**
     * 手机号码
     */
    @Excel(name = "手机号码")
    private String phonenumber;

    /**
     * 生日
     */
    @Excel(name = "生日", dateFormat = "yyyy-MM-dd")
    private Date birthday;

    /**
     * 用户性别
     */
    @Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知", combo = {"男", "女", "未知"})
    private String sex;

    /**
     * 科室
     */
    private Long deptId = UserConstants.SIMULATED_PATIENT_DICT;

    /**
     * 用户类型
     */
    private String userType = UserConstants.SIMULATED_PATIENT_TYPE;

    /**
     * 密码
     */
    private String password = UserConstants.DEFAULT_PASSWORD;

    /**
     * 帐号状态（0正常 1停用）
     */
    private String status = "0";

    /**
     * 删除标志（0代表存在 2代表删除）
     */
    private String delFlag = "0";

    /**
     * 角色 5表示标准化病人
     */
    private Long[] roleIds = UserConstants.SIMULATED_PATIENT_ROLES;


    /** ============= userInfo ============== */
    /**
     * 职称
     */
    @Excel(name = "职称", dictType = "basic_post_simulated_patient_dict")
    private Long post;

    /**
     * 身高
     */
    @Excel(name = "身高")
    private BigDecimal height;

    /**
     * 体重
     */
    @Excel(name = "体重")
    private BigDecimal weight;

    /**
     * 国籍
     */
    @Excel(name = "国籍", dictType = "basic_nationality_dict")
    private Integer nationality;

    /**
     * 婚姻状态
     */
    @Excel(name = "婚姻状态", dictType = "basic_marital_dict")
    private Integer marital;

}
